]> git.r.bdr.sh - rbdr/super-polarity/blobdiff - Super Polarity/SuperPolarity.cs
Implements polarity system
[rbdr/super-polarity] / Super Polarity / SuperPolarity.cs
index c43582eda87f868913b405e0824ad6f8db0e3eb7..b590079bf248f065530b48775c10083b6013c8c4 100644 (file)
@@ -20,18 +20,13 @@ namespace SuperPolarity
         public static GraphicsDeviceManager graphics;
         SpriteBatch spriteBatch;
 
-        // Input Handler
-        KeyboardState currentKeyboardState;
-        GamePadState currentGamePadState;
-
-        MainShip player;
-
         public SuperPolarity()
             : base()
         {
             SuperPolarity.graphics = new GraphicsDeviceManager(this);
             SuperPolarity.graphics.PreferMultiSampling = true;
             Content.RootDirectory = "Content";
+            ActorFactory.SetGame(this);
         }
 
         /// <summary>
@@ -42,9 +37,13 @@ namespace SuperPolarity
         /// </summary>
         protected override void Initialize()
         {
-            player = new MainShip();
-
             base.Initialize();
+
+            InputController.RegisterEventForButton("changePolarity", Buttons.A);
+            InputController.RegisterEventForKey("changePolarity", Keys.Z);
+
+            InputController.RegisterEventForButton("shoot", Buttons.X);
+            InputController.RegisterEventForKey("shoot", Keys.X);
         }
 
         /// <summary>
@@ -58,7 +57,9 @@ namespace SuperPolarity
 
             Vector2 playerPosition = new Vector2(GraphicsDevice.Viewport.TitleSafeArea.X, GraphicsDevice.Viewport.TitleSafeArea.Y + GraphicsDevice.Viewport.TitleSafeArea.Height / 2);
 
-            player.Initialize(Content, Content.Load<Texture2D>("Graphics\\main-ship"), playerPosition);
+            ActorFactory.CreateShip(Ship.Polarity.Positive, new Vector2(200, 200));
+            ActorFactory.CreateShip(Ship.Polarity.Negative, new Vector2(400, 200));
+            ActorFactory.CreateMainShip(playerPosition);
         }
 
         /// <summary>
@@ -83,7 +84,7 @@ namespace SuperPolarity
             // TODO: Add your update logic here
 
             InputController.UpdateInput();
-            player.Update(gameTime);
+            ActorManager.Update(gameTime);
 
             base.Update(gameTime);
         }
@@ -98,7 +99,7 @@ namespace SuperPolarity
 
             spriteBatch.Begin();
 
-            player.Draw(spriteBatch);
+            ActorManager.Draw(spriteBatch);
 
             spriteBatch.End();